.TH Lynis 8 "14 Feb 2020" "1.32" "Unix System Administrator's Manual"


.SH "NAME"
\fB
\fB
\fB
Lynis \fP\- System and security auditing tool
\fB
.SH "SYNOPSIS"
.nf
.fam C

\fBlynis\fP [scan mode] [other options]
.fam T
.fi
.SH "DESCRIPTION"

\fBLynis\fP is a security auditing tool for Linux, macOS, and other systems based
on UNIX. The tool checks the system and the software configuration, to see if
there is any room for improvement the security defenses. All details are stored
in a log file. Findings and other discovered data is stored in a report file.
This can be used to compare differences between audits. \fBLynis\fP can run
interactively or as a cronjob. Root permissions (e.g. sudo) are not required,
however provide more details during the audit.
.PP
The following system areas may be checked:
.IP
\- Boot loader files
.IP
\- Configuration files
.IP
\- Software packages
.IP
\- Directories and files related to logging and auditing
.IP

.SH "FIRST TIME USAGE"
When running \fBLynis\fP for the first time, run: lynis audit system

.SH "COMMANDS"
.IP "audit \<type\>"
Perform an audit of the selected type
.IP "upload-only"
Upload the available report data file

See HELPERS section for more commands.

.SH "SCAN TYPES"

.IP "audit system"
Performs a system audit, which is the most common audit.
.IP "audit system remote \<host\>"
Provide commands to do a remote scan.
.PP
For more scan modes, see the helper utilities.

.SH "OPTIONS"

.TP
.B \-\-auditor <name>
Define the name of the auditor/pentester. When a full name is used, add double
quotes, like "Your Name".
.TP
.B \-\-cronjob
Perform automatic scan with cron safe options (no colors, no questions, no
breaks).
.TP
.B \-\-debug
Display debug information to screen for troubleshooting purposes.
.TP
.B \-\-developer
Display detailed information useful for developers when creating tests.
.TP
.B \-\-forensics
Perform the audit on a running or mounted system (see \-\-rootdir)
.TP
.B \-\-help
Show available commands and most-used options.
.TP
.B \-\-logfile </path/to/logfile>
Defines location and name of log file, instead of default /var/log/lynis.log.
.TP
.B \-\-man
Show the man page. Useful for systems that do not have the man page installed.
.TP
.B \-\-no\-colors
Disable colored output.
.TP
.B \-\-no\-log
Redirect all logging information to /dev/null, prevents sensitive information to
be written to disk.
.TP
.B \-\-no\-plugins
Do not run any of the enabled plugins.
.TP
.B \-\-pentest
Run a non-privileged scan, usually used for penetration testing. Some of the
tests will be skipped if they require root permissions.
.TP
.B \-\-plugin\-dir </path/to/plugins>
Define location where plugins can be found.
.TP
.B \-\-profile <file>
Provide alternative profile to perform the scan.
.TP
.B \-\-quick (\-Q)
Do a quick scan (default: don't wait for user input).
.TP
.B \-\-quiet (\-q)
Run quietly and do not show anything to the screen. Will also enable quick mode.
.TP
.B \-\-report\-file <file>
Provide an alternative name for report file.
.TP
.B \-\-reverse\-colors
Optimize screen output for light backgrounds.
.TP
.B \-\-tests TEST-IDs
Only run the specific test(s). When using multiple tests, add quotes around the
line.
.TP
.B \-\-tests\-from\-category "<category>"
Tests are only performed if they belong to the defined category. Use the command
\ 'show categories' to determine all valid options.
.TP
.B \-\-tests\-from\-group "<group>"
Similar to \-\-tests\-from\-category. Only perform tests from a particular group.
Use 'show groups' to determine valid options.
.TP
.B \-\-use-cwd
Run from the current working directory.
.TP
.B \-\-upload
Upload data to Lynis Enterprise server (profile option: upload=yes).
.TP
.B \-\-verbose
Show more details on screen, such as components that could not found. These
details are hidden by default.
.TP
.B \-\-wait
Wait for user to continue. This adds a break after each section (opposed of
\-\-quick).
.TP
.B \-\-warnings\-only
Run quietly, except show warnings.
.RE
.PP
.RS
Multiple parameters are allowed, though some parameters can only be used together
with others. When running Lynis without any parameters, help will be shown and
the program will exit.
.RE
.PP
.SH "HELPERS"
Lynis has special helpers to do certain tasks. This way the framework of Lynis is
used, while at the same time storing most of the functionality in a separated
file. This speeds up execution and keeps the code clean.

.IP "audit"
Run audit on the system or on other targets
.IP "configure \<parameter\>"
Change or add settings to the config file
.IP "generate \<parameter\>"
Generate specific details such as host IDs
.IP "show \<parameter\>"
Show information, such as configuration and paths
.IP "update \<parameter\>"
Perform activities regarding updating
.PP
To use a helper, run 'lynis' followed by the helper name.

.SH "EXIT CODES"
Lynis uses exit codes to signal any invoking script. Currently the following codes are used:
.IP 0
Program exited normally
.IP 1
Fatal error
.IP 64
An unknown parameter is used, or incomplete
.IP 65
Incorrect data encountered
.IP 66
Can't open file or directory
.IP 78
Lynis found 1 or more warnings or configurations errors (with error-on-warnings=yes)

.SH "BUGS"
Bugs can be reported via GitHub at https://github.com/CISOfy/lynis or via support@cisofy.com

.SH "DOCUMENTATION"
Supporting documentation can be found via https://cisofy.com/support/

.SH "LICENSING"
Lynis is licensed as GPLv3. The tool was created by Michael Boelen in 2007. Since 2013 its development has been taken over by CISOfy under the management of Michael Boelen. Plugins may have a different license.

.SH "CONTACT INFORMATION"
Support requests and project related questions can be addressed via e-mail: lynis-dev@cisofy.com.
